import { useUserStore } from "@/store";
const userStore = useUserStore();
const baseURL = "https://pcapi-xiaotuxian-front-devtest.itheima.net";
const interceptor = {
  // 拦截前触发 - 等价于请求拦截器
  invoke(args) {
    uni.showLoading({ title: "加载中" });
    if (!args.url.startsWith("https")) {
      args.url = baseURL + args.url;
    }
    args.header = {
      ...args.header, // 保留原本的 header
      "source-client": "miniapp", // 添加小程序端调用标识
      Authorization: userStore.profile.token // 请求头携带Token
    };
  },
  // 完成回调拦截 
  complete(res) {
    uni.hideLoading();
  },
};
uni.addInterceptor("request", interceptor); // 注册一个请求拦截器
uni.addInterceptor("uploadFile", interceptor); // 注册一个上传文件拦截器

  const http = async (options) => {
  const res = await uni.request(options);
  
  if (res.statusCode >= 200 && res.statusCode < 300) {
    return res.data;
  }

  if (res.statusCode === 401) {
    uni.navigateTo({ url: "/pages/login/login" });
    return
  }
};

export default http;